﻿#include <learn/ais/ais_point_cloud.h>

using namespace xi;
using namespace xi::ais;

AIS_PointCloud::AIS_PointCloud(std::vector<Vec3> &&points) : m_points(std::move(points))
{
}

const std::vector<Vec3> &AIS_PointCloud::points() const
{
    return m_points;
}

std::vector<Vec3> &AIS_PointCloud::points()
{
    return m_points;
}

void AIS_PointCloud::visit(AIS_InitMsg *msg)
{
    // 利用工厂创建渲染器
    if (msg->factory)
        m_renderer.reset(msg->factory->create_product("AIS_PointCloud"));
}